using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Thaire.Investment.Domains.Transaction
{
   
    public class EquityPrivilege 
    {
        #region Properties
              // EQUITY_PRIVILEGE_ID
        public virtual int EquityPrivilegeID { set; get; }
      // EQUITY_HEADER_ID
        public virtual int? EquityHeaderID { set; get; }
      // ACKNOWLEGE_DATE
        public virtual DateTime? AcknowlegeDate { set; get; }
      // PRIVILEGE_TYPE_NAME
        public virtual String PrivilegeTypeName { set; get; }
      // PRIVILEGE_TYPE_ID
        public virtual int? PrivilegeTypeID { set; get; }
      // EX_DATE
        public virtual DateTime? EXDate { set; get; }
      // BCD_DATE
        public virtual DateTime? BcdDate { set; get; }
      // DIV_UNIT
        public virtual decimal? DivUnit { set; get; }
      // DIV_AMOUNT
        public virtual decimal? DivAmount { set; get; }
      // DIV_STOCK
        public virtual int? DivStock { set; get; }
      // FRACTION_UNIT
        public virtual int? FractionUnit { set; get; }
      // FRACTION_DIV_UNIT
        public virtual decimal? FractionDivUnit { set; get; }
      // AMORTIZE_UNIT
        public virtual decimal? AmortizeUnit { set; get; }
      // PRICE_UNIT
        public virtual decimal? PriceUnit { set; get; }
      // RIGHT_OLD_NEW
        public virtual decimal? RightOldNew { set; get; }
      // PAYMENT_DATE
        public virtual DateTime? PaymentDate { set; get; }
      // TRANNSAFER_DATE
        public virtual DateTime? TrannsaferDate { set; get; }
      // TRANNSAFER_PRICE
        public virtual decimal? TrannsaferPrice { set; get; }
      // CREATE_DATE
        public virtual DateTime? CreateDate { set; get; }
      // CREATE_BY
        public virtual String CreateBY { set; get; }
      // MODIFY_DATE
        public virtual DateTime? ModifyDate { set; get; }
      // MODIFY_BY
        public virtual String ModifyBY { set; get; }

        #endregion

        

        public override bool Equals(object obj)
        {
            if(obj == null)
                return false;
            if(obj.GetType() != typeof(EquityPrivilege) && !(obj is EquityPrivilege))
                return false;
            return ToString().Equals(obj.ToString());
        }

        public override int GetHashCode()
        {
            return ToString().GetHashCode();
        }

        public override string ToString()
        {
            return string.Format("{0}",EquityPrivilegeID);
        }

    }


}